#ifndef _SYS_FIELD_NOT_SET_ERR_H_
#define _SYS_FIELD_NOT_SET_ERR_H_

#include "Err.h"
#include "SysTypes.h"

#define FIELD_NOT_SET_ERR_VTABLE(self)   ((FieldNotSetErrVTable*)((FanObj*)self)->vtable)


extern Type*    FieldNotSetErr_classType;
extern VTable*  FieldNotSetErr_classVTable;


/* [sys::FieldNotSetErr] Attributes */
struct FieldNotSetErr
{
  Err           super;
};


/* [sys::FieldNotSetErr] Virtual-table */
typedef struct FieldNotSetErrVTable
{
  ErrVTable     super;
} FieldNotSetErrVTable;


/* [sys::FieldNotSetErr] Methods and fields */
void            FieldNotSetErr_make_0(FieldNotSetErr* self);
void            FieldNotSetErr_make_1(FieldNotSetErr* self, Str* msg);
void            FieldNotSetErr_make(FieldNotSetErr* self, Str* msg, Err* cause);


/* [sys::FieldNotSetErr] Extra methods */
FieldNotSetErr* FieldNotSetErr_new(Str* msg, Err* cause);
FieldNotSetErr* FieldNotSetErr_newWithFormattedMsg(const char* msgFormat, ...);


/* [sys::FieldNotSetErr] Type-system functions */
Type*           FieldNotSetErr_initType(void);
VTable*         FieldNotSetErr_initVTable(void);
void            FieldNotSetErr_initStatic(void);


#endif
